Dual-port memories are memories in which two independent memory accesses operations can occur at the same time. Such memories are commonly used in applications such as video memory and multi-processing. For example, when video random access memory (VRAM) is implemented using a dual-port RAM, a processor can write an image into memory at the same time that video display circuitry is accessing the video data from memory and displaying the video data on a computer screen or video monitor. By using a dual-port RAM, wait states and memory arbitration is avoided, thereby allowing for faster operation. Using dual-port or multi-port RAM in multiprocessing applications also allows for faster operation. Here, multiple CPUs can access and write the multi-port memory without necessarily having to wait for access.
Single port static RAM (SRAM) is commonly implemented using a six transistor (6T) memory cell that includes a four transistor static latch and a pair of access transistors coupled to a differential bit line. Dual-port static RAM (SRAM), however, is commonly implemented using an eight-transistor (8T) cell that includes a four transistor static latch coupled to a plurality of differential bit lines via two pairs of access transistors. Because of the extra bit-lines and transistors, a particular dual-port memory implementation generally takes up more silicon area than its single-port counterpart. Furthermore, the dual-port SRAM cell itself tends to be larger than a single port SRAM cell for a given access speed to provide the extra drive strength needed to charge and discharge the extra bit line pair.